package top.lixunda.books3.dao;

import org.apache.ibatis.annotations.Param;
import top.lixunda.books3.entity.User;
import top.lixunda.books3.entity.UserBookTag;
import top.lixunda.books3.entity.UserBookTagExample;
import top.lixunda.books3.model.BookTag;

import java.util.List;
import java.util.Map;

public interface UserBookTagMapper {
    long countByExample(UserBookTagExample example);

    int deleteByExample(UserBookTagExample example);

    int deleteByPrimaryKey(Long id);

    int insert(UserBookTag record);

    int insertSelective(UserBookTag record);

    List<UserBookTag> selectByExample(UserBookTagExample example);

    UserBookTag selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") UserBookTag record, @Param("example") UserBookTagExample example);

    int updateByExample(@Param("record") UserBookTag record, @Param("example") UserBookTagExample example);

    int updateByPrimaryKeySelective(UserBookTag record);

    int updateByPrimaryKey(UserBookTag record);

    List<BookTag> selectBookTagByUserAndLimit(@Param("user") User user, @Param("limit") long limit);

    List<BookTag> selectBookTagByLimit(long limit);
}